package cn.quevo.cube.provide.define.service;

import cn.quevo.common.entity.PageResult;
import cn.quevo.cube.provide.define.entity.CubeModel;
import cn.quevo.cube.provide.define.entity.query.CubeModelQuery;

import java.util.Map;

/**
 * 模型 Service
 *
 * @author July july_sky@foxmail.com
 * @version 1.0
 * @date 2018/12/11 14:57:09
 * @Copyright 东方浩星（北京）传媒科技有限公司版权所有.All Rights Reserved.
 */
public interface CubeModelService {

    /**
     * 根据ID获取模型
     *
     * @param cubeModelQuery
     * @return
     * @author July july_sky@foxmail.com
     * @date 2018/12/11 14:57:09
     */
    Map<String,Object> getSinge(CubeModelQuery cubeModelQuery);

    /**
     * 创建模型
     *
     * @param cubeModel
     * @return
     * @author July july_sky@foxmail.com
     * @date 2018/12/11 14:57:09
     */
    Integer create(CubeModel cubeModel);

    /**
     * 更新模型
     *
     * @param cubeModel
     * @return
     * @author July july_sky@foxmail.com
     * @date 2018/12/11 14:57:09
     */
    Integer update(CubeModel cubeModel);

    /**
     * 分页获取模型
     *
     * @param cubeModelQuery
     * @return
     * @author July july_sky@foxmail.com
     * @date 2018/12/11 14:57:09
     */
    PageResult<Map<String,Object>> getPage(CubeModelQuery cubeModelQuery);
}
